<p>
Duplicated string literals are error-prone to refactor, as one must pay attention to update all occurrences.
Constants can be referenced from many places, but there value is updated in a single place.
</p>

<p>The following code:</p>

<pre>
 void run() {
  prepare("action1");                     // Non-Compliant - "action1" is duplicated 3 times
  execute("action1");
  release("action1");
}

 std::string method3(std::string a) {
  printf("'" + a + "'\n");                // Compliant - literal "'" has less than 5 characters and is excluded
  return "";                              // Compliant - literal "" has less than 5 characters and is excluded
}
</pre>

<p>should be refactored into:</p>

<pre>
 const std::string ACTION_1 = "action1";  // Compliant

 void run() {
  prepare(ACTION_1);                      // Compliant
  execute(ACTION_1);
  release(ACTION_1);
}
</pre>
